import BtnModel from "./BtnModel"

export default class TableColumnModel {
  /**
   * 定义索引类型为string
   */
  [index: string]: any
  /**
   * 列名
   */
  public label: string = ''
  /**
   * 列关键字
   */
  public prop: string = ''
  /**
   * 宽度
   */
  public width?: string | number = 180
  /**
   * 自定义显示内容
   */
  public render?: String | ((scope: any) => String)
  /**
   * 是否固定
   */
  public fixed?: boolean | 'left' | 'right' = false
  /**
   * 是否操作列
   */
  public oper?: boolean = false
  /**
   * 子
   */
  public children?: Array<BtnModel>

  constructor(arg: TableColumnModel) {
    for (let key of Object.keys(arg)) {
      this[key] = arg[key]
    }
  }
}
